import axios from "axios";
import { getTokeName } from "../utils/comstants";
import router from "@/router";
import { ElMessage } from "element-plus";
axios.defaults.baseURL='/api'

const request=axios.create({
    timeout:50000
})
//请求
request.interceptors.request.use(config=>{
let token=localStorage.getItem(getTokeName())||sessionStorage.getItem(getTokeName())||null
config.headers["Authorization"]=token?token:null
return config
},err=>{
    return Promise.reject(err)
})

//响应拦截器
request.interceptors.response.use(config=>{
    if (config.data.code==402) {
        router.push("/")
        ElMessage.error("token过期 请重新登录")
    }
    if (config.data.code==401) {
        router.push("/")
        ElMessage.error("token过期 请重新登录")
    }
    return config;
},err=>{
    if (err.response.status==402) {
        router.push("/")
        ElMessage.error("token过期 请重新登录")
    }
    if (err.response.status==401) {
        router.push("/")
        ElMessage.error("token过期 请重新登录")
    }
    return Promise.reject(err)
})

export default request